home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
LANG
/
C
/
LIB
/
UNIXLIB37B
/
!UnixLib37
/
src
/
c
/
memchr
< prev
next >
Wrap
Text File
|
1996-11-09
|
1KB
|
57 lines
/****************************************************************************
*
* $Source: /unixb/home/unixlib/source/unixlib37/src/c/RCS/memchr,v $
* $Date: 1996/04/19 21:26:42 $
* $Revision: 1.1 $
* $State: Rel $
* $Author: simon $
*
* $Log: memchr,v $
* Revision 1.1 1996/04/19 21:26:42 simon
* Initial revision
*
***************************************************************************/
static const char rcs_id[] = "$Id: memchr,v 1.1 1996/04/19 21:26:42 simon Rel $";
#include <string.h>
void *
memchr (register const void *s, register int c, register size_t n)
{
register unsigned char *_s = (unsigned char *) s;
while (n & 0x07)
{
n--;
if (*_s++ == c)
{
ret:return ((void *) (--_s));
}
}
n >>= 3;
while (n)
{
n--;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
if (*_s++ == c)
goto ret;
}
return (0);
}